/**
 * 抽奖相关接口
 */

import { post } from './request'
import type { 
  SpbLotteryRequest, 
  SpbLotteryResponse,
  SpbAddLotteryChanceRequest 
} from './apifox/models'

/**
 * 抽奖
 * 执行抽奖操作
 * 
 * @param data 请求参数，包含抽奖类型（lottryType）
 * @returns 返回抽奖结果，包括是否中奖、奖品信息、剩余抽奖次数
 */
export function lottery(data: SpbLotteryRequest): Promise<SpbLotteryResponse> {
  return post<SpbLotteryResponse>('/lottery', data, {
    showLoading: true,
    loadingText: '抽奖中...'
  })
}

/**
 * 增加抽奖机会
 * 为用户增加额外的抽奖机会
 * 
 * @param data 请求参数，包含需要添加的抽奖机会信息
 * @returns 返回操作结果
 */
export function addLotteryChance(data: SpbAddLotteryChanceRequest): Promise<Record<string, any>> {
  return post<Record<string, any>>('/add_lottery_chance', data, {
    showLoading: true,
    loadingText: '处理中...'
  })
}

